Uncovering Architectural Design Decisions

نویسندگان

  • Arman Shahbazian
  • Youn Kyu Lee
  • Duc Minh Le
  • Nenad Medvidovic
چکیده

Over the past three decades, considerable effort has been devoted to the study of software architecture. A major portion of this effort has focused on the originally proposed view of four “C”s—components, connectors, configurations, and constraints—that are the building blocks of a system’s architecture. Despite being simple and appealing, this view has proven to be incomplete and has required further elaboration. To that end, researchers have more recently tried to approach architectures from another important perspective—that of design decisions that yield a system’s architecture. These more recent efforts have lacked a precise understanding of several key questions, however: (1) What is an architectural design decision (definition)? (2) How can architectural design decisions be found in existing systems (identification)? (3) What system decisions are and are not architectural (classification)? (4) How are architectural design decisions manifested in the code (reification)? (5) How can important architectural decisions be preserved and/or changed as desired (evolution)? This paper presents a technique targeted at answering these questions by analyzing information that is readily available about software systems. We applied our technique on over 100 different versions of two widely adopted opensource systems, and found that it can accurately uncover the architectural design decisions embodied in the systems.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Desirability-based architectural design of forms

Abstract The decisions and personal preferences of the designer are vital for all aspects and stages of the design. To elaborate, the designer has the central role in creation, development, detailing and construction of the built forms. Also, the scientific/engineering evaluations of the design models are carried out under the directions and decisions of the designer. The paper explores the con...

متن کامل

Evolution-Centered Architectural Design Decisions Management

Software architecture is considered as a set of architectural design decisions. Managing the evolution of architectural design decisions helps to maintain consistency between requirements and the deployed system, and is also necessary for reducing architectural knowledge evaporation. In this paper, we propose a UML metamodel based on the Triple View Model from our previous research work. The UM...

متن کامل

Harmonizing architectural decisions with component view models using reusable architectural knowledge transformations and constraints

Architectural design decisions (ADDs) have been used in recent years for capturing design rationale and documenting architectural knowledge (AK). However, various architectural design views still provide the most common means for describing and communicating architectural design. The evolution of software systems requires that both ADDs and architectural design views are documented and maintain...

متن کامل

An Ontology of Architectural Design Decisions in Software-Intensive Systems

Architectural design decisions deserve to be first class entities in the process of developing complex software-intensive systems. Preserving the graphs of decisions and all their interdependencies will support the evolution and maintenance of such systems. In this paper we present a possible ontology of architectural design decisions, their attributes and relationships, for complex, software-i...

متن کامل

An Integrated Approach to Quality Achievement with Architectural Design Decisions

Good software architecture is critically important for successful software development. The software architecture can be defined as a set of architectural design decisions. However, the effort for acquiring good software architecture currently lacks of interest and experience in architectural design decisions. For this reason, during acquiring good software architecture, it is difficult to eval...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1704.04798  شماره 

صفحات  -

تاریخ انتشار 2017